1. Field of the Invention
The present invention relates to timing synchronization across a network with one or more timing reference nodes; more particularly to a system that provides precision timing reference through a variety of links to a plurality of follower network nodes.
2. Description of the Prior Art
Synchronization of clocks between computers can be effected anywhere on, above or within, the planet, or in fact anywhere within the Universe. Timing synchronization includes clock synchronization for Frequency, Phase and Time of Day.
Many extant protocols/methodologies, and implementations thereof, exist regarding the field of clock synchronization. For example, Network Time Protocol (NTP), GPS Protocol and Precision Time Protocol (IEEE (1588) are all public time protocols. NTP sets out a hierarchical system of clock strata, the highest of which are devices like atomic clocks and GPS clocks, and employs time stamps to achieve synchronization. NTP itself does not set out a specific method to achieve synchronization. Operational models of NTP can be found in other protocols such as RFC 778, NTPv4, and SNTP.
Rather than sending information back and forth between a master clock and a slave clock, the GPS protocol uses the GPS system to adjust both the master and slave clocks. By doing so, the GPS protocol avoids very complicated synchronization algorithms.
In the IEEE 1588 protocol, the master clock sends a time stamped packet to a slave clock, which then sends another time stamped packet back to the master. The delays of transport of both packets, which are assumed to be constant, can then be determined and used to calculate the phase difference of the two clocks. The master clock then sends a synchronization message to the slave, which can then be synchronized with the information from the master.
U.S. Pat. No. 6,373,834 works similarly to IEEE 1588. In order to determine synchronization adjustment value, one clock sends a message to another clock, which then sends a response message back to the first clock. Both messages contain timing information. Accordingly, the system disclosed by the '834 patent can also be considered a bidirectional synchronization method.
U.S. Pat. No. 6,438,702 discloses a concept that is similar to that of IEEE 1588 and U.S. Pat. No. 6,313,834. A customer equipment clock sends a request for time service to a network timeserver. The server then responds by sending operation, administration and maintenance information back to the customer equipment clock. Such information is immediately sent back to the server, and is used to calculate packet delay time and to synchronize the customer equipment clock. Accordingly, the concept disclosed by the '702 patent can also be considered a bidirectional synchronization method.
U.S. Patent Application Publication 2007/0260906 attempts to overcome some deficiencies of the original IEEE 1588 protocol. It discloses a belief that the limit cycle of IEEE 1588 provides intrinsic inaccuracy due to phase offset between the clocks. For example, if a master and a slave clock operate at the same frequency, but were out of phase by 180 degrees, they would have been deemed synchronized. Furthermore, because the relay of synchronization in formation occurs relatively infrequently, a significant number of clock cycles can pass with the clock out of synchronization. This problem is overcome by adding a number of controllers and an accumulator between the master and the slave clock to trace the clocking differences between the clocks and synchronize the clocks at proper time points at a higher accuracy. The concept disclosed by the '906 published application can still be considered a bidirectional method.
The art disclosed in references 1588, U.S. Pat. Nos. 6,373,834 and 6,438,702, U.S. Patent Application 2007/0260906 only work well in close to ideal situations where there exist minimum propagation delay variation and the delays are symmetrical between both directions. In the real world, especially when the network traffic is high, packets have to wait at intermediate nodes for an available time slot. The wait, which is the major cause of propagation delay during transport, can be long and random so that the variation of the delays is high, and can be several magnitudes higher than the phase differences between the clocks. Therefore, the assumption that such delays are constant and symmetrical will result in inaccurate synchronization. To summarize, none of the protocols or algorithms disclosed by these prior art workers can be effectively used to synchronize clocks during heavy network traffic.
“A Statistical Method for Time Synchronization of Computer Clocks with Precisely Frequency-synchronized Oscillators” by Yamashita et al. and published in the “Proceedings of the 18th International Conference on Distributed Computing Systems, 26-29 May, 1998, Amsterdam” discloses a method which considers propagation delay variations and uses a statistical approach to tackle the problem. By collecting a number of time stamped packets, the published algorithm estimates the means of propagation delays and calculates a confidence interval of the measured time offsets. These statistical approaches can be used to estimate the average propagation delay, which can then be used to adjust the clocks. When the means vary a lot between sets of collected intervals, a statistical method can predict that the network traffic is heavy and defer to a different time for synchronization. The effectiveness of such statistical approaches can be limited, especially considering that the level of propagation delays can be a few magnitudes higher than that of the clock phase differences. Consequently, a small estimation error will result in an error in synchronization.
U.S. Patent Application Publication 2008/0080567 provides a unidirectional approach to synchronize clocks over a network. The approach does not require the slave clock to send messages back to the server clock. Instead, the slave clock selects a plurality of consecutive intervals of time stamped packets with certain criteria, so that each of these intervals has the same or very similar propagation delays, i.e. there is a minimum or no propagation delay variation. By using these intervals, frequency differences can be accurately estimated.
Notwithstanding the considerable efforts by prior art workers, there exists a need in the art for time synchronization methodologies, apparatus, systems and protocols that can inexpensively, quickly and accurately synchronize clocks under actual network load conditions.